package com.noahplat.user.feign;

import com.noahplat.common.utils.Result;
import com.noahplat.user.pojo.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;

/**
 * 作者：李景星
 * 描述：user远程调用feign抽取
 * 时间：2020-10-30
 */
@FeignClient(name = "user", contextId = "userFeign")
public interface UserFeign {

    /**
     * 作者：李景星
     * 描述：通过用户名获取用户信息
     * 时间：2020-10-31
     *
     * @param username
     */
    @GetMapping("/api/user/queryUserByUsername/{username}")
    Result<User> queryUserByUsername(@PathVariable("username") String username);


    /**
     * 根据Id查询用户信息
     *
     * @param id
     * @return
     */
    @GetMapping("/api/user/findUserById")
    Result<User> findUserById(@RequestParam("id") long id);

    /**
     * 根据Id更新用户信息
     *
     * @author 李东
     * @time 2021-03-02
     */
    @PostMapping("/api/user/modifyUserById")
    Result updateUserById(@RequestBody User user);

    /**
     * 通过手机号查询用户
     * @param phone
     * @return
     */
    @GetMapping("/api/user/getUserByPhone")
    Result getUserByPhone(@RequestParam("stid") Long sitd,@RequestParam("phone") String phone);

}
